package com.bedpotato.util;

import org.apache.commons.lang3.StringUtils;

public class ProxyUtil {
	/**
	 * 判断是否为合法的IP
	 * 
	 * @author LiALuN
	 * @param ip
	 * @return
	 */
	public static boolean isLegalIP(String ip) {
		if (ip == null || ip.isEmpty()) {
			return false;
		}
		// 首尾是否为数字
		if (!Character.isDigit(ip.charAt(0))
				|| !Character.isDigit(ip.charAt(ip.length() - 1))) {
			return false;
		}
		// 通过.拆分后是否为4段
		String[] ipSplitArray = ip.split("\\.");
		if (ipSplitArray == null || ipSplitArray.length != 4) {
			return false;
		}
		// 每一段是否为数字，是否<=255
		for (String ipSplitStr : ipSplitArray) {
			if (!StringUtils.isNumeric(ipSplitStr)) {
				return false;
			} else {
				if (Integer.valueOf(ipSplitStr) >= 0
						&& Integer.valueOf(ipSplitStr) <= 255) {
					continue;
				} else {
					return false;
				}
			}
		}
		return true;
	}
}
